1. Field
Example embodiments of inventive concepts relate to a non-volatile random access memory (RAM), for example, to a non-volatile RAM for reading data, from a buffer included therein or reading data from a non-volatile memory array included therein, based on temperature during a program operation and a time lapse since the program operation when performing a read operation, and a solid state drive (SSD) and a computer system including the same.
2. Description of the Related Art
SSDs used as main storage devices instead of hard disk drives (HDDs) include flash memory for storing data. For flash memory, since an overwrite operation is not permitted, block erasing and a merge operation are performed during a program operation. In addition, the number of available program operations is limited per block in the flash memory, and therefore, it is important to keep the wear of blocks uniform using a scheme like wear leveling. To overcome the problems caused by these characteristics of flash memory, non-volatile RAM is utilized as cache memory for data requiring frequent updates.
With developments in semiconductor technology, studies have been performed on non-volatile RAM that can operate at a higher speed like dynamic RAM (DRAM) but can retain data even when not powered like flash memory. Examples of such non-volatile RAM include phase-change RAM (PRAM), ferroelectric RAM (FRAM), and magnetic RAM (MRAM).
PRAM is a memory device which stores data in a cell by determining “high” or “low” logic based on resistance changing according to a phase state changing based on current of the cell. When data is read from PRAM before a certain period of time since a cell is programmed at a relatively hot temperature, errors are more highly likely to occur. Such characteristics of PRAM are referred to as an initial resistance fail. The initial resistance fail of PRAM is generally influenced by external temperature. Therefore, to prevent or reduce the initial resistance fail, it is generally necessary to monitor and manage a time when data is programmed in a cell and external temperature thereafter.